package com.kude.entity;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

/**
 * AbstractProduct entity provides the base persistence definition of the
 * Product entity. @author MyEclipse Persistence Tools
 */

public abstract class AbstractProduct implements java.io.Serializable {

	public static final String TABLE_NAME = "product";
	public static final String PRODUCT_CATEGORY = "productCategory";
	public static final String IMAGE_PATH = "imagePath";
	public static final String INTRODUCTION = "introduction";
	public static final String TYPE_NAME = "typeName";
	public static final String IS_ONSALE = "isOnsale";
	public static final String IS_NEW = "isNew";
	// Fields

	private Integer productId;
	private ProductCategory productCategory;
	private String imagePath;
	private String typeName;
	private String introduction;
	private Integer isOnsale;
	private Integer isNew;
	private Date time;

	// Constructors

	/** default constructor */
	public AbstractProduct() {
	}

	/** full constructor */
	public AbstractProduct(Integer productId, ProductCategory productCategory,
			String imagePath, String typeName, String introduction,
			Integer isOnsale, Integer isNew, Date time) {

		this.productId = productId;
		this.productCategory = productCategory;
		this.imagePath = imagePath;
		this.typeName = typeName;
		this.introduction = introduction;
		this.isOnsale = isOnsale;
		this.isNew = isNew;

	}

	public Integer getProductId() {
		return productId;
	}

	public void setProductId(Integer productId) {
		this.productId = productId;
	}

	public ProductCategory getProductCategory() {
		return productCategory;
	}

	public void setProductCategory(ProductCategory productCategory) {
		this.productCategory = productCategory;
	}

	public String getImagePath() {
		return imagePath;
	}

	public void setImagePath(String imagePath) {
		this.imagePath = imagePath;
	}

	public String getTypeName() {
		return typeName;
	}

	public void setTypeName(String typeName) {
		this.typeName = typeName;
	}

	public String getIntroduction() {
		return introduction;
	}

	public void setIntroduction(String introduction) {
		this.introduction = introduction;
	}

	public Integer getIsOnsale() {
		return isOnsale;
	}

	public void setIsOnsale(Integer isOnsale) {
		this.isOnsale = isOnsale;
	}

	public Integer getIsNew() {
		return isNew;
	}

	public void setIsNew(Integer isNew) {
		this.isNew = isNew;
	}

	public Date getTime() {
		return time;
	}

	public void setTime(Date time) {
		this.time = time;
	}

	// Property accessors
}